Exemplo: Contagem de caracteres


Código para realizar a contagem de caracteres maiúsculos e minúsculos e um texto.

public class App {

        public static void main(String[] args) {
                // Constantes com letras
                final String MINUSCULAS = "abcdefghijklmnopqrstuvwxyz";
                final String MAIUSCULAS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

                String texto = "ExEmPlO de StrInG CoM LeTrAs";

                int qtdeMinusculas = 0;
                int qtdeMaiusculas = 0;

                for (int posicao = 0; posicao < texto.length(); posicao++) {
                        
                        char caractere = texto.charAt(posicao);
                         
                        // chamada da função para identificar se o caractere é minúsculo
                        if (ehMinuscula(caractere, MINUSCULAS)) 
                              minusculas++;
                        // chamada da função para identificar se o caracteere é maiúsculo
                        else if (ehMaiuscula(caractere, MAIUSCULAS)) 
                              maiusculas++;
                }

                System.out.println("Letras minúsculas: " + qtdeMinusculas);
                System.out.println("Letras maiúsculas: " + qtdeMaiusculas);
        }

    // Função que verifica se um caractere está nas minúsculas
        public static boolean ehMinuscula(char c, String MINUSCULAS) {

                // percorre cada letra da constante
                for (int i = 0; i < MINUSCULAS.length(); i++) {

                        // compara o caractere c com a letra atual da constante
                        if (c == MINUSCULAS.charAt(i)) {
                             return true; // encontrou
                        }
                }

                return false; // não encontrou
        }

        // Função que verifica se um caractere está nas maiúsculas
        public static boolean ehMaiuscula(char c, String MAIUSCULAS) {
                //pesquise sobre o métodolo indexOf
                //note que este código é muito mais simples em termos de uso
                return MAIUSCULAS.indexOf(c) != -1;
        }
}